<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <!-- 导向微信服务器 -->
  <button>微信登录</button>
  <!-- 如果认证成功，获取用户信息 -->
  <button>获取用户信息</button>
  <!-- 要调jssdk，首先进行config认证 -->
  <button onclick="getJSConfig()">获取JSConfig</button>

  <!-- 后端模板时代 ajax前后端分离时代jQuery 工程化时代 云端时代 多端应用 flutter taro serverless -->
  <script src="https://cdn.bootcss.com/axios/0.19.0-beta.1/axios.min.js"></script>
  <script src="http://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script>
  <script>
    /**
     * 首先加载jweixin.js文件
     * 把wx加入到window对象上
     * 
     */ 
    // 获取jsconfig
    var getJSConfig = async function(){
      console.log('wx', wx)
      // 不能直接用，首先要获取jsconfig
      const res = await axios.get('/getJSConfig', {
        params: {
          url: window.location.href
        }
      })
      console.log('config', res)
      res.data.jsApiList = ['onMenuShareTimeline']
      wx.config(res.data)
      wx.reay(function(res){
        console.log(res)
      })
      // 获取网路状态
      wx.getNetworkType({
        success:function(res){
          
        }
      })
    }
    var auth = function(){
      window.location.href="/wxAuthorize"
    }
    var getUser = async function(){
      // 
      const qs = Qs.parse(window.location.search.substr(1))
      const openid = qs.openid

      const res = await axios.get('/getUser', {
        params: {
          openid
        }
      })
      console.log('getUser:', res)
    }
    var getTokens = async function(){
      const res = await axios.get('/getTokens')
      
    }
    var getFollowers = async function(){
      const res = await axios.get('/getFollowers')
 
    }
    /**
     * 公众号开发网页端
     *  1，公众号网页授权 
     *  2，Oauth2原理 第三方登录
     *    session token 第三方Oauth2
     *  3，jssdk调用方法
     * 
     * 浏览器发送认证请求到服务器，服务器重定向微信认证界面，
     * 把同意授权的动作提交到微信服务器，微信服务器会回调带认证的code，到我们的服务器
     * 服务器拿到code去向微信服务器申请令牌，如果可以的话就返回令牌，发出指令刷新页面
     * 
     * 
     * webpack proxy代理后端
     * 后端提供静态服务 + webpack watch
     * 
     * 
     * 9:30 - 11:30 2小时
     * 13:00 - 15:00 2小时
     * 15:00 - 17:30 2.5小时
     */
  </script>
</body>
</html>